Android 中 ImageView 的 src 和 background 的区别

2015-07-12 16:36

作者:给立乐*
出处:http://spencer-dev.com/2015/07/12/Android 中 ImageView 的 src 和 background 的区别
声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处。

ImageView 中 XML 属性 src 和 background 的区别:

background 会根据 ImageView 组件给定的长宽进行拉伸,而 src 就存放的是原图的大小,不会进行拉伸。src 是图片内容(前景),background 是背景,两者可以同时使用。


ImageView 有两个显示图片的属性,作用:

如果两个属性同时存在,用户会看到 src 属性中设置的背景,但同时 background 设置的背景也存在,只是被 src 属性挡住了,在后面。
所以 src 相当于是前景,background 相当于是背景。


怎么用 Java 代码来动态改变这两种属性的值?

1
2
3
4
5
// src :
imageView.setImageDrawable(this.getResources().getDrawable((R.drawable.ic_launcher)));
// background :
imageView.setBackgroundResource(android.R.color.background_dark);

此外:scaleType 只对 src 起作用,background 可设置透明度。

layout 中设置应该是:android:src="@drawable/logo"
而不是:android:background="@drawable/logo"

代码设置应该是:imageView.setImageResource(R.drawable.logo);
而不是:imageView.setBackgroundResource(R.drawable.logo);


Comments: